The use of non-volatile memories, i.e. those memories that retain stored information even when power is turned off, has noticeably increased. Many applications need to store large quantities of information for later use and to access the non-volatile device with high speed, both when writing the data into the device and when retrieving it. For example, digital cameras and camcorders are using higher and higher resolution, leading to a dramatic increase of the memory size needed for storing each picture or frame.
NAND memory devices are often the preferred solution because of the high density that can be achieved. However, it's becoming difficult for present day non-volatile memory devices to meet the speed requirements while maintaining high reliability, especially when multi-bit per cell storage is implemented to further increase the memory capacity. Despite the major advances in technology, process control is not perfect and unavoidable fluctuations are present not only from one device to another, but also on the same die. These fluctuations reduce the design margins and unfavorably impact the working window of the device, to the limit that reading of the stored data is not sufficiently reliable and other countermeasures need to be set in place, such as complicated error correction codes.
Reading speed is a most critical parameter in non-volatile memory performances. Reading of the memory also occurs during the erasing and the programming operations to verify the charge status of the memory cells and determine the progress status of the erase/write operation. Accordingly, the reading speed also impacts the programming and the erasing speed.
The problems above are even more critical in multi-level cells (MLC), because it is necessary to set the charge status of each memory cell very precisely and correspondingly a considerable increase of the number of precise verification accesses to the memory is observed to precisely determine the cell's threshold voltage. This impacts the execution time, especially in random accesses to the memory, when a fast reply would be desirable. Moreover, in many cases a considerable consumption is unavoidable, which makes the use of these memories less appealing in portable and battery-supplied equipment.